home *** CD-ROM | disk | FTP | other *** search
/ Gamers Delight 2 / Gamers Delight 2.iso / Aminet / game / gag / walkingman.lha / WalkingMan / Sources / Bewegungsgenerator / Bewegung.h < prev    next >
C/C++ Source or Header  |  1992-08-04  |  2KB  |  98 lines

  1. /* JPK13.04.92-24.04.92+05.05.92+22.05.92 */
  2.  
  3. #ifndef BEWEGUNG_H
  4. #define BEWEGUNG_H
  5.  
  6. #ifndef LISTE_H
  7. #include "Listenverwaltung/Liste.h"
  8. #endif
  9. #ifndef EXTERN_H
  10. #include "Extern.h"
  11. #endif
  12. #ifndef DARSTELLUNG_H
  13. #include "Darstellung/Darstellung.h"
  14. #endif
  15. #ifndef ANALYSE_H
  16. #include "Bildschirmanalyse/Analyse.h"
  17. #endif
  18. #ifndef ZUFALLSGENERATOR_H
  19. #include "Zufallsgenerator/Zufallsgenerator.h"
  20. #endif
  21.  
  22.  
  23.     /***** Strukturen *****/
  24.  
  25. #ifdef BEWEGUNG_PRIVAT
  26. struct Mannliste
  27.     {
  28.     struct Liste maennchen;
  29.     };
  30. #endif
  31. struct Manneintrag
  32.     {
  33.     struct Liste_Element kopf;
  34.  
  35.     enum {
  36.         gehen, fallen, stehen, klettern, sitzen, unsichtbar
  37.         } Bewegungsart;
  38.     WORD
  39.         speedX,
  40.         speedY,
  41.         posX,
  42.         posY;
  43.     UWORD bild;
  44.  
  45.     /* privat für Bewegungsgenerator */
  46.         unsigned verschwindet: 1;
  47.         UWORD Warten;
  48.         /* Bewegungsgenerator Ende */
  49.  
  50.     /* privat für Bildschirmanalyse */
  51.         struct Screeneintrag *grund;
  52.         /* Bildschirmanalyse Ende */
  53.  
  54.     /* privat für Darstellung */
  55.         unsigned nacht: 1;
  56.         WORD helligkeit;
  57.         struct SimpleSprite sprite;
  58.         struct Disp_Grafik grafik;
  59.         /* Darstellung Ende */
  60.     };
  61.  
  62.  
  63.     /***** Konstanten *****/
  64.  
  65. #define MANN_HOEHE    10
  66. #define MANN_GROESSE    9
  67. #define MANN_BREITE    5
  68. #define MANN_HAND        4
  69. #define KOMMA            4
  70. #define GRAVITATION    1
  71. #define MAXSPEED        (10<<KOMMA)
  72. #define UEBERGANG        3
  73.  
  74. #define SEK60_0    1500
  75. #define SEK30_0    750
  76. #define SEK15_0    375
  77. #define SEK10_0    250
  78. #define SEK2_0        50
  79. #define SEK1_0        25
  80. #define SEK0_5        13
  81.  
  82.  
  83.     /***** Funktionen *****/
  84.  
  85. extern UBYTE eigene_Sprites;
  86.  
  87. extern void
  88.     Bewegung_Init(),
  89.     Bewegung_Clear(),
  90.     Bewegung_Alt(),
  91.     Bewegung_Schritt(),
  92.     Bewegung_Halbschritt();
  93. extern char
  94.     Bewegung_Neu();
  95.  
  96. #endif
  97.  
  98.